package com.aotain.nyx.statis;

import com.aotain.nyx.flink.BasicTuple;

public class AbnStatisTuple extends BasicTuple{

	/**
	 * 
	 */
	private static final long serialVersionUID = 8196856842174841606L;

	private Long upStreamOctets;
	
	private Long upStreamPacket;
	
	private Long attackNum = 0l;
	
	private String type;//异常类型
	
	private String sourceCountry;

	private String sourceProvince;
	
	private Long stAttackNum = 0l;
	
	private Double attackMax = 0.0;
	
	//应用共攻击，包括WEB攻击,SQL注入攻击,XSS攻击,暴力破解,扫描攻击,端口异常,僵尸主机
	//流量攻击，包括 流量异常,Syn Flood,Tcp Flood,Udp Flood,Ack Flood,Icmp Flood,DNS攻击类型的异常,CC攻击
	private String attackType ;//攻击类型1：流量攻击；2：应用攻击
	
	private String attTime = "0";
	
	private Integer evaluate;
		
	public Integer getEvaluate() {
		return evaluate;
	}

	public void setEvaluate(Integer evaluate) {
		this.evaluate = evaluate;
	}

	public String getAttTime() {
		return attTime;
	}

	public void setAttTime(String attTime) {
		this.attTime = attTime;
	}

	public String getAttackType() {
		return attackType;
	}

	public void setAttackType(String attackType) {
		this.attackType = attackType;
	}

	public Long getStAttackNum() {
		return stAttackNum;
	}

	public void setStAttackNum(Long stAttackNum) {
		this.stAttackNum = stAttackNum;
	}

	public String getSourceCountry() {
		return sourceCountry;
	}

	public void setSourceCountry(String sourceCountry) {
		this.sourceCountry = sourceCountry;
	}

	public String getSourceProvince() {
		return sourceProvince;
	}

	public void setSourceProvince(String sourceProvince) {
		this.sourceProvince = sourceProvince;
	}

	public Long getUpStreamOctets() {
		return upStreamOctets;
	}

	public void setUpStreamOctets(Long upStreamOctets) {
		this.upStreamOctets = upStreamOctets;
	}

	public Long getUpStreamPacket() {
		return upStreamPacket;
	}

	public void setUpStreamPacket(Long upStreamPacket) {
		this.upStreamPacket = upStreamPacket;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}
	
	/**
	 * 实际的攻击次数，一次攻击：从开始到结束
	  * @return
	  * @Description:
	 */
	public Long getAttackNum() {
		return attackNum;
	}
	
	/**
	 * 实际的攻击次数，一次攻击：从开始到结束
	  * @param attacknum
	  * @Description:
	 */
	public void setAttackNum(Long attacknum) {
		this.attackNum = attacknum;
	}
	
	/**
	 * 攻击流量峰值
	 * @return
	 * @Description:
	 */
	public Double getAttackMax() {
		return attackMax;
	}
	
	
	/**
	 * 攻击流量峰值
	 * @param attackmax
	 * @Description:
	 */
	public void setAttackMax(Double attackmax) {
		attackMax = attackmax;
	}
	
}
